Projeto de algoritmos é um método específico para criar um processo matemático na resolução de problemas. Projeto de algoritmos aplicado é chamado de engenharia de algoritmos.
Um projeto de algoritmos é identificado e incorporado em muitas soluções de teorias de operação de pesquisa, tais como a programação dinâmica e divisão e conquista. Técnicas para a concepção e implementação do projeto de algoritmo são chamadas de padrões de projeto de algoritmo,[1] tais como o Template Method e o Decorator, e usos de estruturas de dados, e nome e listas de classificação. Alguns usos cotidianos do projeto de algoritmo podem ser encontrados na recuperação de processos de rastreamento, roteamento de pacotes e cache da web.
Linguagens de programação mainframe como ALGOL (para linguagem algorítmica), FORTRAN, COBOL, PL/I, SAIL, e SNOBOL são ferramentas computacionais para a implementação de um "projeto de algoritmos"... mas, um "projeto de algoritmos" (a/d) não é uma linguagem. um a/d pode ser um processo escrito à mão, e.g. um conjunto de equações, uma série de processos mecânicos feito à mão, uma peça análoga do equipamento, ou um processo digital e/ou processador.
Um dos aspectos mais importantes do projeto de algoritmos é a criação de um algoritmo que tenha um tempo de execução eficiente, também conhecido como seu Grande-O.
Etapas no desenvolvimento de algoritmos: